package com.library.common.utils;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.pagehelper.PageInfo;
import com.library.common.entity.MyPage;

import java.math.BigDecimal;

/**
 * @author chennan
 * @date 2018.9.15 16:47
 */
public class PageUtil {

	public static <T> MyPage toPage(IPage<T> iPage) {
		return MyPage.<T>builder()
				//当前页码
				.current(iPage.getCurrent())
				//页大小
				.pageSize(Integer.parseInt(iPage.getSize()+""))
				//总页码数
				.pages(iPage.getPages())
				//数据总条数
				.total(iPage.getTotal())
				//数据
				.records(iPage.getRecords())
				.build();
	}

	public static <T> MyPage<T> PageInfo2MyPage(PageInfo<T> page) {
		return MyPage.<T>builder()
				//当前页码
				.current(Long.parseLong(page.getPageNum()+""))
				//页大小
				.pageSize(Integer.parseInt(page.getPageSize()+""))
				//总页码数
				.pages(Long.parseLong(page.getPages()+""))
				//数据总条数
				.total(page.getTotal())
				//数据
				.records(page.getList())
				.build();
	}
	public static <T> MyPage<T> PageInfo3MyPage(PageInfo<T> page, int orderCount, int payOrderCount, BigDecimal totalAmount) {
		return MyPage.<T>builder()
				//当前页码
				.current(Long.parseLong(page.getPageNum()+""))
				//页大小
				.pageSize(Integer.parseInt(page.getPageSize()+""))
				//总页码数
				.pages(Long.parseLong(page.getPages()+""))
				//数据总条数
				.total(page.getTotal())
				//数据
				.records(page.getList())
				//总订单
				.orderCount(orderCount)
				//支付订单
				.payOrderCount(payOrderCount)
				//总收入
				.totalAmount(totalAmount)
				.build();
	}
}
